本次題目希望將給予的陣列重新排序,從左至右由大到小,但是希望將所有的 0 排列到陣列的右側
input = [0,1,0,3,12]
output = [1,3,12,0,0]
先將傳入的陣列 ary 排序,排序方式是如果左邊的數字比右邊的小,就把它移到右邊,sort 會重複檢查 ary 符不符合這個要求並不是指排序一次,是一直排直到排到好,
input = [0,1,0,3,12]
output = [1,3,12,0,0]
function moveZero(ary){
a = ary.sort( (x,y)=>{ return x-y } ) //[ 0, 0, 1, 3, 12 ]
while(a[0]== 0){
b = a.shift()
a.push(b)
}
return a
}
function expect(a,b){
console.log(JSON.stringify(a)===JSON.stringify(b))
}
expect(moveZero(input),output)
sort排序方法----from MDN
Daily kitty